Method and apparatus for providing an on-screen guide for a multiple channel broadcasting system

ABSTRACT

A method and apparatus for channel surfing while using an electronic program guide are provided. A multiple channel broadcasting system is tuned to a first channel to provide a display of a broadcast of a first program on a screen. An electronic program guide is displayed that identifies a plurality of channels and programming on the channels. A first display information packet containing a description of the first program is displayed with the electronic program guide. A system pointer is manipulated in response to input by the user to an area of the electronic program guide associated with a second program. The display of the first display information packet is subsequently replaced with a display of a second display information packet containing a description of the second program. A method and apparatus for providing a status indication of a tuner and a pointer in a multiple channel broadcasting system are also provided. A system pointer is supplied that points to a location in an electronic program guide that identifies a channel program in the broadcasting system. An indication is provided to the user as to the status of the broadcasting system tuner and the system pointer.

FIELD OF THE INVENTION

The present invention relates to the presentation of channel, program,and broadcast information for a multiple channel television broadcastsystem.

BACKGROUND OF THE INVENTION

Television broadcasting technology has improved tremendously since itsinception. Today, television signals are broadcasted on the airwaves,through cables, and via satellite. The number of stations accessibletoday has increased to hundreds of stations. To select a program toview, many viewers simply “channel surf” until they find a channel thathas a desirable program. Channel surfing refers to the process of usingthe channel “+” or “−” key to sequentially view each channel. Althoughsome viewers find channel surfing among hundreds of stations enjoyable,most viewers prefer a more direct method for selecting a program toview.

Some prior art television channel selection guides provide a televisionchannel selection guide which displays a listing of the channelstypically in numeric order and the titles of the programs broadcasted orto be broadcasted on the channels. A simplified block diagram of such aguide is illustrated in FIG. 1. The viewer or user of the system maythen select the channel by entering in the channel number or selecting aprogram. The system responds by removing the guide displayed and tuningto the station selected and displaying the broadcast signals of thestation.

This system has a number of drawbacks. First, the guide provides onlythe title of the program. To get additional information, such as awritten description of the program, the user must select an informationbutton which responds by bringing up a second layer of the menu havingthe program description. Thus, as the number of stations increase, theefficiency of reviewing programs and program descriptions decreases.

Furthermore, many viewers prefer to preview an actual broadcast on astation before selecting that station for viewing. In the prior artsystems, the user has to select each station to view, and subsequentlygo back to the channel guide in order to view program titles on otherchannels. While other prior art systems may provide a program listinghaving a transparent background superimposed over a program broadcast,it is still difficult to view the program broadcast through the programlisting.

Moreover, in any television system a user can channel surf by skippingfrom channel to channel in sequence using the channel “up” or “down”buttons. However, when channel surfing in the prior art systems, theuser is unable to take advantage of the channel listing and programdescription information. While some prior art television channelselection guides allow for channel surfing while the guide is displayed,these systems change the channel as the user moves a selection device orpointer to each new channel. Again this prevents taking full advantageof the broadcast system guide because, while the system guide providesprogram descriptions, a user might like to view a particular channelwhile surfing among the program descriptions of other channels.

Another shortcoming of prior art television channel selection guides isthat, while providing the current time on the guide display, they do notprovide a clear representation of the current time in relation to thechannel program listings. Consequently, it is difficult for a user toascertain the amount of time elapsed since a particular program began.

In the current generation of broadcasting technology, a viewer isprovided with many options regarding programs that are available forbroadcast. These options include, but are not limited to, on-demandselection of pay-per-view broadcasts, selection of a broadcast forautomatic recording, and programming a broadcast system to tune to apreselected station at a designated time. As the number of optionsincreases, so to does the need for a user-friendly system interface. Theprior art channel selection guides do not provide a ready statusindication as part of the channel selection guide. In addition, as thechannel selection guides become more interactive and provide the viewerwith more selections, the lack of status displays for system pointersand tuners can lead to a great deal of viewer frustration.

SUMMARY OF THE INVENTION

A method and apparatus for channel surfing while using an electronicprogram guide are provided. According to one aspect of the invention, amultiple channel broadcasting system is tuned to a first channel toprovide a display of a broadcast of a first program on a screen. Anelectronic program guide is displayed that identifies a plurality ofchannels and programming on the channels. A first display informationpacket containing a description of the first program is displayed withthe electronic program guide. The broadcast system displays a systempointer. The system pointer is manipulated in response to input by theuser to an area of the electronic program guide associated with a secondprogram. The display of the first display information packet issubsequently replaced with a display of a second display informationpacket containing a description of the second program. The broadcastsystem remains tuned to the first program while the user views programinformation for a second program on a second channel.

A method and apparatus for providing a status indication of a tuner anda pointer in a multiple channel broadcasting system are also provided.According to one aspect of the invention, the multiple channelbroadcasting system is tuned to a channel to provide a display of abroadcast of a program on a screen. An electronic program guide isgenerated that identifies a plurality of channels and programming on thechannels. A system pointer is supplied that points to a location in theelectronic program guide that identifies a channel program in thebroadcasting system. An indication is provided to the user as to thestatus of the broadcasting system tuner and the system pointer. Thestatus is indicated by displaying a program block of a correspondingprogram on the electronic program guide as appearing to be depressedinto the screen when the broadcasting system is tuned to the channelprogram. The status is indicated by displaying a program block of acorresponding program on the electronic program guide as appearing to beprotruding from the screen when the broadcasting system is not tuned tothe channel program. The status is indicated by displaying a programblock of a corresponding program as highlighted when the system pointeris pointing to the channel program. The status is indicated bydisplaying a program block of a corresponding program as unhighlightedwhen the system pointer is not pointing to the channel program.

These and other features, aspects, and advantages of the presentinvention will be apparent from the accompanying drawings and from thedetailed description and appended claims which follow.

BRIEF DESCRIPTION OF THE DRAWINGS

The objects, features, and advantages of the present invention will beapparent to one skilled in the art from the following detaileddescription in which:

FIG. 1 is a simplified illustration of a prior art direct digitalsatellite system guide display.

FIG. 2 is a simple illustration of one embodiment of the presentinvention.

FIG. 3 is a block diagram representation of the elements utilized in thereceiver of the television signals.

FIG. 4 is a representation of a remote control utilized to tunetelevision stations in accordance with the teachings of the presentinvention.

FIG. 5 is a simplified block diagram of the circuitry utilized in aremote control device.

FIG. 6 illustrates the type of data utilized to present the electronicprogram guide in accordance with the teachings of the present invention.

FIG. 7 illustrates the pointers to the data utilized to generate theelectronic program guide in accordance with the teachings of the presentinvention.

FIG. 8 illustrates the Master Guide presented to enable the viewer toview programming that is broadcast and is to be broadcast.

FIGS. 9A, 9B and 9C illustrate one embodiment of the present inventionin which a broadcast audio and video is displayed behind the MasterGuide.

FIG. 10 is an exemplary flowchart illustrative of translating a displayto a small window in one embodiment of the present invention.

FIG. 11 illustrates a broadcast display in one embodiment of the presentinvention.

FIG. 12 illustrates superimposing successively smaller broadcast windowoutlines over a broadcast display in the translation of the broadcastwindow in one embodiment of the present invention.

FIG. 13 illustrates the display of an electronic program guide alongwith a program broadcast on a screen in one embodiment of the presentinvention.

FIG. 14 is an exemplary flowchart that illustrates integrating thetranslation of a display to a small window with other functions of abroadcast system in one embodiment of the present invention.

FIG. 15 illustrates the display of an electronic program guide in oneembodiment of the present invention.

FIG. 16 is an exemplary flowchart illustrative of the process foroptimizing the font size for an available display space in oneembodiment of the present invention.

FIG. 17 is an exemplary flowchart illustrative of the process forintegrating the process of optimization of the font size with otherfunctions of a broadcast system in one embodiment of the presentinvention.

FIG. 18 is an exemplary flowchart illustrative of channel surfing in oneembodiment of the present invention.

FIG. 19 is an exemplary flowchart illustrative of the process forproviding tuner and pointer status display in one embodiment of thepresent invention.

FIG. 20 illustrates the display of an electronic program guide in oneembodiment of the present invention.

FIG. 21 illustrates the display of an electronic subcategory guide withan electronic program guide in one embodiment of the present invention.

FIG. 22 is an exemplary flowchart that illustrates the process forproviding an icon to indicate program status in one embodiment of thepresent invention.

FIG. 23 illustrates the display of an electronic program guide havingprogram status icons in one embodiment of the present invention.

FIG. 24 is an exemplary flowchart that illustrates a process forproviding a time bar with a current time marker in one embodiment of thepresent invention.

FIG. 25 illustrates the display of an electronic program guide having agraphical representation of the current time in relation to the times ofchannel programming in one embodiment of the present invention.

FIG. 26 is an exemplary flowchart that illustrates the process forproviding an on-screen menu having differing transparency levels in oneembodiment of the present invention.

FIG. 27 illustrates the display of an on screen menu having differingtransparency levels in one embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

In the method and apparatus of the present invention the broadcastsystem described is a direct broadcast satellite system. However, it isreadily apparent to one skilled in the art that other broadcast systemswhich have the capability of receiving and displaying a multiplicity ofstations may utilize the method and apparatus of the present invention.Furthermore, in the following description, for purposes of explanation,numerous details are set forth, such as menus, flowcharts and systemconfigurations, in order to provide a thorough understanding of thepresent invention. However, it will be apparent to one skilled in theart that these specific details are not required in order to practicethe present invention. In other instances, well known electricalstructures and circuits are shown in block diagram form in order not tounnecessarily obscure the present invention.

FIG. 2 is a simplified diagram illustrating a Direct Satellite System(DSS). The system has an antenna 3, an integrated receiver/decoder 2(IRD), a remote controller 5, and a monitor 4. Packets of data aretransmitted by a transponder on the satellite. Each transpondertransmits data in a time share manner at a predetermined frequency. Atuner 21 of a decoder is tuned in to the frequency of the transpondercorresponding to a channel, which is designated by a viewer so that thepackets of digital data are received by the decoder.

The antenna 3 receives an encoded data signal sent from a satellite. Thereceived encoded signal is decoded by the IRD. The antenna 3 has a lownoise block down converter 3 a (LNB). The LNB 3 a converts a frequencyof a signal sent from the satellite to another frequency. The convertedsignal is supplied to the IRD 3. The monitor 4 receives a signal fromthe IRD 3.

FIG. 3 is a block diagram of the IRD 3. A radio frequency (RF) signaloutput from the LNB 3 a of the antenna 3 is supplied to a tuner 21 of afront end 20. The output from the tuner 21 is supplied to a quadraturephase shift keying (QPSK) demodulation circuit 22 for demodulation. Theoutput from the QPSK demodulation circuit 22 is supplied to an errorcorrecting circuit 23 for error correction. The data is received inencrypted and encoded (i.e., compressed) form.

The transport IC 24 receives the data stream, consisting of packets ofdata, from the error correcting circuit 23 and directs portions of thedata stream to the appropriate circuit for processing. The digital datastream sent from a satellite includes headers for classifying thedifferent portions of the data in the digital data stream. The transportIC stores the headers in registers and uses the headers to direct thedata. The data stream sent from the satellite, includes video data inthe format specified by the Motion Pictures Expert Group standard(MPEG), MPEG audio data and electronic programming guide (EPG) data.Data that is identified by its header to be video data is transferred toMPEG video decoder 25. Data that is identified by its header to be audiodata is transferred to MPEG audio decoder 26. Similarly, data having aheader that identifies the data to be EPG data is transferred to apredetermined area in the data buffer 51 designated to store the EPG.

A conditional access module 33, includes a central processing unit(CPU), a read-only memory (ROM) and a random access memory (RAM). Theconditional access module determines whether the user has theauthorization to receive certain data, e.g., audio/video for a pay TVstation, using the authorization information stored in its memory. Thus,if the conditional access module determines that the user is authorizedaccess, a key to decrypt the incoming data is provided to the transportIC 24, which decrypts the data using the key provided. In oneembodiment, a smart card is utilized. This card is inserted into thecard reader interface 32 for interface to the transport IC 24. It isreadily apparent to one skilled in the art that the conditional accessmodule is not limited to smart cards and may be configured in otherkinds of circuitry.

The MPEG video decoder 25 decodes the video signal received from thetransport IC. Dynamic random access memory (DRAM) 25 a, connected to theMPEG video decoder 25, is used for buffering and storage of video dataduring processing by the MPEG video decoder. The decoded digital videosignal is supplied to a National Television System Committee (NTSC)encoder 27 and converted to a luminance signal (Y) and a chroma signal(C) which are respectively output through a buffer amplifier 28Y or 28Cas an S video signal. A composite video signal is also output through abuffer amplifier 28V.

The MPEG audio decoder 26 decodes the digital audio signal. DRAM 26 a ,connected to the MPEG audio decoder 26, is used for buffering of dataand information during processing by the MPEG audio decoder 26. Thedecoded digital audio signal is converted into an analog audio signal byD/A converter 30. The left audio signal is output through bufferamplifier 31L and the right audio signal is output through bufferamplifier 31R.

An RF modulator 41 mixes a composite signal output from the NTSC encoder27 with an analog audio signal output from the D/A converter 30. The RFmodulator 41 converts the mixed signal into an RF signal and outputs theRF signal therefrom.

The CPU 29 is the central control mechanism and executes code stored inthe ROM 37 to perform certain functions of the system. For example, theCPU processes certain data to control the generation of the program listin accordance with the teachings of the present invention. In addition,the CPU receives and processes the user input, received from the frontpanel buttons or switches 40 and the photodetector circuit 39 to providethe user functionality and access to the system described herein. Inaddition, the CPU accesses user settings/preferences for processing ofinformation and configuration of the system. The user settings arestored in the non-volatile memory, such as electrically erasableprogrammable read-only memory (EEPROM) 38. In addition, the CPUmaintains a list of pointers, stored in static random access memory(SRAM) 36, to the channel information and program information stored inthe SRAM 51. Thus, when a user wishes to display a form of the EPG onthe screen, the CPU 29, accessing pointers stored in the SRAM 36,communicates to the transport IC 34 to retrieve the data from the databuffer (SRAM) 51 identified by the pointers. The CPU then formulates theformat and other digital data which forms the guide or list on thescreen and forwards the data representative of the guide/list to thetransport IC 34 which forwards the data to the DRAM 25 a of the MPEGvideo decoder 25 for subsequent output to the screen.

FIG. 4 shows an example of a remote controller utilized by a user totransmit commands and make program selections in accordance with theteachings of the present invention. FIG. 5 is simplified a block diagramof the remote controller. The remote controller 400 has an infraredoriginating device 405, a set of operation buttons 410, a CPU 415, a ROM420 and a RAM 425. The CPU 415 receives a signal sent from an operationbutton 410 through an input port 430. The signal is processed accordingto a program stored in the ROM 420. The RAM 425 is used as a workingspace so as to produce a transmitting code. The transmitting code issent to the infrared originating device 405 through an output port andconverted into an infrared signal. The infrared signal is transmitted tothe IRD. The operation buttons 410 include a direction key fordesignating a pointer direction such as north, south, east and west, an“EPG” key, a “FAVORITE” key, a “SELECT KEY”, a “MENU” key, an “EXIT”key, a ten-key numeric keypad and an “ENTER” key. The set of operationbuttons 410 enable the user to select programs through the electronicprogramming guide in accordance with the teachings of the presentinvention.

FIG. 6 is a block diagram illustration of the data stored in a portionof the data buffer RAM 51. As noted above, the RAM 51 stores EPG dataincluding guide data, channel data, and program data. Generalinformation is included in the guide data, for example, the current dateand time. The transponder list identifies the number of the transpondertransmitting a segment. The channel list identifies the channel numberof the first channel of a portion of data. The channel data includesdata relating to channels, such as the channel number, channel name(i.e., the call sign of a broadcast station), logo ID (i.e., anidentification of the channel logo), data ID, which is an identificationof a channel number of MPEG video data or MPEG audio data, number ofprograms, which identifies the number of programs to be transmitted on achannel during a predetermined time frame, and first program offsetwhich identifies the offset from the header to the first channel data ina segment.

The program data includes the program title, start time of the program,time length of the program, program category such as movies, news,sports, etc., program subcategory such as drama, horror, children'smovies or baseball, basketball, football for the sports category, themovie rating and program description that provides a detaileddescription of the program.

FIG. 7 illustrates how pointers to the EPG data are sorted for displayon a guide on the user's television screen. As noted above, EPG dataincludes guide data, channel data and program data which are stored inthe Data Buffer (RAM) of the IRD (as shown in FIG. 3). When a viewerselects a channel, the CPU of the system determines the packetcontaining the channel information and extracts the transponder numberfrom the channel information. The system front end starts tuning in thefrequency of the designated transponder so as to receive the datatransmitting from that transponder. If a viewer does not select anychannel, the last channel is designated.

As noted above, the CPU generates a table of pointers 736 to the EPGstored in the memory. The table 736 is used for changing the order ofchannels or programs according to the information to be presented in theguide to the user. The table 736 includes an entry for the addresspointer to the corresponding channel data and an entry to thecorresponding program data.

A table for generating display information is stored in the ROM 37.Certain data from the table is read out from the ROM 37 and stored inDRAM 25 a. Preferably the data is stored in compressed form. Therefore,when a character is displayed on a screen, the compressed characterarray is decoded so as to generate the character to be displayed. Theencoder references a dictionary which includes a set of words andfrequently used portions of words and numbers corresponding to each wordor portion of a word. The encoder encodes each word to each number byusing the dictionary. The decoder references the same dictionary as theencoder to perform the decode function. Once decoded, each character ofthe decoded word includes a character code corresponding to an AmericanStandard Code for Information Interchange (ASCII) code. Nonvolatilememory (e.g., EEPROM 38) has two tables. The first table containscharacter bitmaps in the different fonts available for each character.The second table identifies the address in the first table at which toextract the character bitmap. The address is determined according to thecharacter code. The bit map image of the character is transmitted toDRAM 25 a and subsequently accessed to display the character on thescreen.

In one embodiment of the present invention, the channel data is receivedfrom a predetermined transponder and the channel number and channel nameare stored in DRAM 25 a. Additional channel information such as thechannel logo is stored in the ROM 36. The ROM 36 preferably includes atable of Logo IDs and the address of Logo Data stored in ROM 36.Therefore, once a Logo ID is determined, the address of the Logo Data isdetermined, retrieved and stored in DRAM 25 a.

The channel data provides the beginning address of the program data fora particular program. The actual location on the screen at which theprogram information is displayed is dependent upon the format of theguide. For example, in a time-based system, the location where theprogram title is displayed is determined by the start time and timelength stored in the program data.

Using this information downloaded from the satellite transmission,programming and channel selection information is provided to the viewer.In the system and method of one embodiment of the present invention,this information is provided to the user in an innovative manner inorder to enable the viewer to easily determine and select stations orprograms to be viewed. For example, FIG. 8 illustrates a Master Guidethat provides such information as the channel call sign 810, channelnumber 815 in the system, the channel logo of the selected station 820,a highlight 825 indicating the location of the system pointer operableby the arrow direction buttons, a program description 830 for theprogram the system pointer is located at, as well as program timeinformation 835.

This guide is superimposed on the broadcast of channel 840 at which thesystem pointer is located. Thus, the user not only is provided thetelevision system data showing the television channels, times ofprogramming broadcasts and descriptions of programs, but is alsoprovided the audio and video of one channel, all on the same menu levelof the guide. By movement of the pointer 845 (in the present example, bymanipulation of the information highlighted), the channel tuned to willchange automatically, enabling the user to stay in the menu while stillpreviewing in part the actual channel highlighted on the guide. Thisprocess is illustrated by FIGS. 9A, 9B, and 9C. The discussion will nowturn to general process flows for an embodiment of the presentinvention.

It is readily apparent to one skilled in the art that additionalfunctions can be added to the process and functions modified or removedand still be within the spirit and scope of the invention. The systemprovides an innovative and user friendly access to a wealth ofinformation regarding programming available through the broadcastingsystem. In the present invention a number of functions are selectablethrough the remote control device. It is apparent that these functionsmay be selectable through other devices such as a joystick or othermeans such as an on screen menu.

FIG. 10 is an exemplary flowchart illustrative of translating a displayto a small window in one embodiment of the present invention. Theresizing process provides innovative feedback to the user whileproviding the broadcast system time to perform the computationsnecessary to resize the window. In the present embodiment, the broadcastdisplay is translated to a small window when the user selects to displaythe electronic program guide. Thus both the broadcast and the electronicprogram guide are displayed without overlap. It is readily apparent thatthe window resizing process can be used to resize windows for a varietyof purposes.

Referring to FIG. 10, operation begins at Block 1000, at which abroadcasting system is tuned to a channel to provide a display of abroadcast of a program. The broadcast window corresponds to the entiredisplay. FIG. 11 illustrates a broadcast display 1102 in one embodimentof the present invention. It is readily apparent that the window sizeneed not initially correspond to the entire display but can be someportion of the display. Operation continues at Block 1002, at which aseries of successively smaller broadcast window outlines aresuperimposed over the program display when it is desirable to translateto a smaller window. FIG. 12 illustrates superimposing thesesuccessfully smaller broadcast window outlines 1202-1210 over abroadcast display 1201 in the translation of a broadcast window in oneembodiment of the present invention. With reference to FIG. 12, outline1202 is displayed first, followed by outlines 1204, 1206, 1208, and1210, respectively. Preferably, outline 1202 is shorter in length andnarrower in width than the screen perimeter 1220, although it iscontemplated that the outlines can progress in one dimension. Each ofoutlines 1204, 1206, 1208, and 1210 is shorter in length and narrower inwidth than the preceding outline, respectively.

Referring again to FIG. 10, operation continues at Block 1004, at whichthe program display is translated to a smaller broadcast window.Preferably the size of the broadcast window is not changed until thesize of the smallest superimposed broadcast window outline equals apredetermined smallest broadcast window size. In an alternateembodiment, the size of the broadcast window changes as the size of theoutline changes.

Operation continues at Block 1006, at which programming information inthe form of an electronic program guide is displayed on the screen withthe broadcast on the screen such that no portion of the broadcast iscovered by the electronic program guide. In an alternate embodiment,programming information is displayed performed prior to the translationof the program broadcast.

FIG. 13 illustrates one embodiment of a display of an electronic programguide 1301 with the program broadcast 1310 on a screen 1320. Theelectronic program guide 1301 includes the broadcast channel number1330, the broadcast network identification 1332, the program title 1334,the start and end times for a program 1336, the current day 1338, thecurrent date 1340, and the current time 1342. It is readily apparentthat other embodiments of displays of electronic program guidespresenting different information may be utilized.

Referring to FIG. 13, a user is able to readily view not only thebroadcast audio and video, but also the electronic program guide ofprogramming and the program description. A display information packet1302 containing a description of the program broadcast may be displayedwith the electronic program guide 1310. The display information packet1302 also contains the program title 1350, the broadcast networkidentification 1352, the broadcast channel number 1354, the start andend times of the program 1356, and the program rating 1358.Alternatively, the user may selectively replace the display of thedisplay information packet 1302 with the display of an electroniccategory guide. The electronic category guide contains a listing ofprogramming categories.

After viewing the programming selections on the electronic programguide, a viewer may deselect the electronic program guide display. Theelectronic program guide display is also deselected upon selection of achannel by the user. Upon deselection of the electronic program guide,the broadcast system translates the broadcast of a program displayed inthe small window by superimposing a series of successively largerbroadcast window outlines over the display. In the present embodiment,the first larger broadcast window is longer in length and wider in widththan the small window in which the program is displayed. Each successiveoutline is longer in length and wider in width than the precedingoutline. Following the translation, the video broadcast is redisplayedin an area defined by each successively larger broadcast window outline.

FIG. 14 is an exemplary flowchart that illustrates one embodiment of theprocess for integrating the translation of a display to a small windowwith other functions of a broadcast system. Operation begins at Block1402, at which a television screen or display is currently showing abroadcast of a selected station. Operation continues at Block 1404, atwhich a user may select the electronic program guide for display. Thesystem monitors the states of the buttons on a user's remote controldevice to determine when the user has depressed a certain button.Implementation of monitoring, e.g., polling, interrupt driven events,are well known in the art and will not be discussed further herein. Ifthe user does not select the electronic program guide for displayoperation continues at Block 1402, at which the system continues todisplay the broadcast and monitors selection by the user of theelectronic program guide function. If the user does select theelectronic program guide for display at Block 1404, then operationcontinues at Block 1406, at which a series of successfully smallerbroadcast window outlines are displayed.

Operation continues at Block 1408, at which the display of a broadcastis translated to a smaller broadcast window on the display. Operationcontinues at Block 1410, at which an electronic program guide isdisplayed in an area adjacent to the smaller broadcast window. Anexemplary electronic program guide was previously discussed withreference to FIG. 13. Operation continues at Block 1412, at which adisplay information packet is displayed along with the electronicprogram guide in an area adjacent to the broadcast window on theelectronic program guide. The display information packet contains adescription of the program that is currently selected. Operationcontinues at Block 1414, at which a user may select an electroniccategory guide for display using the buttons on the remote control. Ifthe user selects the display of an electronic category guide, operationcontinues at Block 1416, at which the display of an electronic categoryguide replaces the display of the display information packet. Theelectronic category guide includes a number of programming categories.The broadcast system then identifies programs on channels thatcorrespond to each category contained in the electronic category guide.The programs that correspond to the particular categories of theelectronic category guide are then highlighted on the electronic programguide.

If the user does not select the electronic category guide for display,or following the display of the electronic category guide when the userselects the electronic category guide for display, operation continuesat Block 1418, at which the user may,deselect the display of theelectronic program guide using the buttons on the remote control. If theuser does not deselect the electronic program guide at Block 1418,operation continues at Block 1410, at which the broadcast systemcontinues to display the electronic program guide. If the user doesdeselect the electronic program guide at Block 1418, operation continuesat Block 1420, at which a series of successfully larger broadcast windowoutlines are displayed. Operation continues at Block 1422, at which theelectronic program guide is removed from the display. If the electroniccategory guide was not selected by the user, then the displayinformation packet is also removed from the display at Block 1422. Ifthe electronic category guide was selected by the user, then theelectronic category guide is also removed from the display at Block1422. Operation continues at Block 1424, at which the display of thebroadcast is translated to a larger window on the display screen.

As noted earlier and referring again to FIG. 13, the user may select adisplay information packet for display along with the electronic programguide. In one embodiment, the display information packet contains adescription of the program selected for display. Preferably, the systemautomatically resizes the text of the display information packet suchthat all the text appears in the window. FIG. 15 illustrates a displayof an electronic program guide in one embodiment of the presentinvention that is displayed with a display information packet 1502 thatcontains a greater number of characters than the display informationpacket 1302 of FIG. 13. As the area allocated for the displayinformation packet in one embodiment of the broadcasting system is of aconstant fixed size, the broadcasting system is configured to adjust thefont size of the characters based on the number of characters presentfor display. Optimization of the font size causes a maximum number ofcharacters to be displayed for a given display area.

FIG. 16 is an exemplary flowchart illustrative of the process foroptimizing the font size for an available display space in oneembodiment of the present invention. Operation begins at Block 1602, atwhich the broadcast system determines a number of characters to bedisplayed. Operation continues at Block 1604, at which the broadcastsystem determines the number of display pixels available for characterdisplay. Operation continues at Block 1606, at which the broadcastsystem adjusts the character font size in order to display allcharacters in the available number of display pixels. Operationcontinues at Block 1608, at which the broadcasting system displays thecharacters in the display information packet.

FIG. 17 is an exemplary flowchart illustrative of the process forintegrating the process of optimization of the font size in the displayinformation packet with other functions of a broadcast system in oneembodiment of the present invention. Operation begins at Block 1702, atwhich a television screen or display is currently showing a broadcast ofa selected station. Operation continues at Block 1704, at which a usermay select a display of an electronic program guide. If the user doesnot select the electronic program guide for display, operation continuesat Block 1702, at which the system continues to display the broadcast.If the user does select the display of an electronic program guideoperation continues at Block 1706, at which the electronic program guideis displayed. Operation continues at Block 1708, at which a user selectsa display information packet for display along with the electronicprogram guide.

Upon selection of the display information packet for display, operationcontinues at Block 1710, at which the broadcast system determines thenumber of pixels available for the display information packet. Operationcontinues at Block 1712, at which the broadcast system determines thenumber of characters in the display information packet that are to bedisplayed. In one embodiment, the maximum number of characters is 256.Operation continues at Block 1714, at which the broadcasting systemdetermines if the number of characters is less than 180. One embodimentof the present invention uses three font sizes for the displayingcharacters in the display information packet. If the broadcast systemdetermines at Block 1714 that the number of characters is less than 180,then the broadcast system selects the largest of the three font sizes.Following selection of the largest font size, operation continues atBlock 1722, at which the broadcast system displays the displayinformation packet using the largest font.

If the broadcast system determines at Block 1714 that the number ofcharacters is not less than 180, then operation continues at Block 1716,at which the broadcasting system determines if the number of charactersis greater than 180 and less then 220 characters. If the number ofcharacters is greater than 180 and less than 220 then the broadcastsystem selects the medium font size. Following selection of the mediumfont size, operation continues at Block 1722, at which the broadcastsystem displays the display information packet using the medium sizedfont.

If the broadcast system determines at Block 1714 that the number ofcharacters is not more than 180 and less than 220, then operationcontinues at Block 1718, at which the broadcast system determines thatthe number of characters is more than 220. Operation continues at Block1720, at which the broadcast system selects the smallest of the threefont sizes. Operation continues at Block 1722, at which the broadcastsystem displays the display information packet using the smallest fontsize.

Because the number of television broadcasting stations accessible todayincludes hundreds of stations, many viewers channel surf until they finda channel that has a desirable program. Channel surfing refers to theprocess of using the channel plus or minus key to sequentially view eachchannel. While some viewers find channel surfing among hundreds ofstations enjoyable, some viewers prefer a more direct method of programselection. For this reason, an embodiment of the system of the presentinvention uses two modes, a non-channel surfing mode and a channelsurfing mode, from which a user may select channels to view.

The non-channel surfing mode is described with reference to FIGS. 9A,9B, and 9C. When the user selects the non-channel surfing mode, thebroadcast system is first tuned to a channel 233 to provide a broadcastof a program on the screen or display 910. The user then selects adisplay of an electronic program guide 912 for identifying the channelsavailable on the broadcast system and the programming available on thechannels. A display information packet 916 is displayed along with theelectronic program guide 912, and the display information packet 916contains a description of the program to which the broadcast system iscurrently tuned. Furthermore, a system pointer 918 is displayed on theelectronic program guide 912. The system pointer 918 is used to select aprogram for viewing by the user and, as such, may be manipulated by theuser within the area of the electronic program guide 912. In thenon-channel surfing mode the broadcast system is tuned to the channelthat is pointed to by the system pointer 918. Furthermore, the displayinformation packet 916 displays a program description for the program towhich the broadcasting system is tuned. Therefore, when the usermanipulates the system pointer to a different channel 229 and 240 in thenon-channel surfing mode, the broadcast system tunes to that channel anddisplays the program 975 and 930 currently being broadcast on thatchannel, respectively.

In contrast to the non-channel surfing mode, is the channel surfing modeof one embodiment of the present invention. FIG. 18 is an exemplaryflowchart illustrative of the process of channel surfing in oneembodiment of the present invention. At Block 1802, the broadcast systemis tuned to a first channel and a display is generated consisting of abroadcast window, an electronic program guide, a display informationpacket, and a system pointer. A first program broadcast is displayed inthe broadcast window. Operation continues at Block 1804, at which adisplay information packet is displayed for the first program broadcast.This display information packet contains a description of the firstprogram broadcast. At Block 1806, the user moves the system pointer toan area of the electronic program guide associated with a second programbroadcast. Operation continues at Block 1808, at which the broadcastsystem replaces the display information packet of the first program witha display information packet of a second program broadcast. Thebroadcast system remains tuned to the first program broadcast andcontinues to display the first program broadcast.

In the channel surfing mode the user may manipulate the system pointerto a program or channel in the electronic program guide that isdifferent from the program or channel currently being broadcast. Forthis reason, it is preferred that the broadcast system provides in theelectronic program guide an indication to the user as to the status ofthe broadcast system tuner and the system pointer. However, the statusindication is not required to operate the channel surfing mode inaccordance with the teachings of the present invention. FIG. 19 is anexemplary flowchart illustrative of the process for providing tuner andpointer status display in one embodiment of the present invention. Anelectronic program guide is generated at Block 1902. At Block 1904, asystem pointer is supplied for the electronic program guide. Operationcontinues at Block 1906, at which a status indication is provided of thesystem tuner and the system pointer.

Each program displayed in the electronic program guide is displayed in aprogram block or area that is associated with a particular channel and aparticular time slot. The status indication is provided by controllingthe appearance of the program block in accordance with the location ofthe system pointer and the channel to which the system is tuned. Inparticular, when the broadcast system is tuned to a program, andtherefore the broadcast window displays the programming of the channelthe system is tuned to, the corresponding program block is displayed onthe electronic program guide as appearing to be depressed into thescreen. The program blocks of the remaining programs not broadcasted butshown in the electronic program guide appear to be protruding from thescreen. Therefore, when the broadcasting system is not tuned to aprogram the corresponding program block is displayed on the electronicprogram guide as appearing to be protruding from the screen. The statusindication of the system pointer causes a different effect. Inparticular, when the system pointer is pointing to a program thecorresponding program block is displayed as highlighted on theelectronic program guide. When the system pointer is not pointing to aprogram the corresponding program block is displayed as not highlightedon the electronic program guide.

There are four primary combinations of the status indications as used byan embodiment of the broadcast system of the present invention. First,the display of a program block appears depressed into the screen andhighlighted to indicate that the broadcast system is tuned to thecorresponding program and the system pointer is pointing to thecorresponding program. Second, the display of a program block appearsdepressed into the screen and unhighlighted to indicate that thebroadcast system is tuned to the corresponding program while the systempointer is pointing to a different program. Third, the display of aprogram block appears protruding from the screen and highlighted toindicate that the system pointer is pointing to the correspondingprogram while t he broadcast system is tuned to a different program.Fourth, the display of a program block appears protruding from thescreen and unhighlighted to indicate that the broadcast system is nottuned to the corresponding program and the system pointer is notpointing to the corresponding program.

FIG. 13 illustrates a tuner and pointer status display in one embodimentof the present invention. The broadcast system of FIG. 13 is tuned tothe National Geographic Explorer program on the TBS network as indicatedby the corresponding program block 1380 appearing to be depressed intothe screen. The system pointer is also pointing to the NationalGeographic Explorer program as indicated by the highlighting of programblock 1380.

FIG. 20 illustrates the situation in which a broadcast system is tunedto one channel and the system pointer is pointing somewhere other thanto the channel which is tuned. In particular, the broadcast system ofFIG. 20 is tuned to the National Geographic Explorer program on the TBSnetwork as indicated by the corresponding program block 2002 appearingto be depressed into the screen. An electronic category guide isselected for display instead of a display information packet. The systempointer is pointing to the “ALL” category box 2004 in the electroniccategory guide as indicated by the highlighting of the category block2004.

As shown in FIG. 20, instead of selecting a display information packetfor display at Block 1806 of FIG. 18, the user may select an electroniccategory guide 2006 for display with the electronic program guide 2001.The electronic category guide 2006 includes a number of programmingcategories 2010. The broadcast system then identifies programs onchannels that correspond to each category 2010 contained in theelectronic category guide 2006. The programs that correspond to theparticular categories of the electronic category guide 2006 are thenindicated or highlighted on the electronic program guide 2001. Thesystem pointer may be manipulated by the user to an area of theelectronic category guide 2006, and system pointer status is indicated.When the system pointer is pointing to a category block the categoryblock is displayed as highlighted on the electronic category guide 2006.The system pointer is pointing to the “ALL” category block 2004 in theelectronic category guide 2006 as indicated by the highlighting ofcategory block 2004.

If the user, typically using the broadcast system remote control,selects one of the categories from the electronic category guide, thenthe display of the electronic category guide is replaced with a displayof an electronic subcategory guide. FIG. 21 illustrates the display ofan electronic subcategory guide 2102 with an electronic program guide2104 in on e embodiment of the present invention. The selected category2106 is displayed along with the electronic subcategory guide 2102 andthe electronic program guide 2104. The electronic subcategory guide 2102includes a number of subcategories 2108. The broadcast system identifiesprograms on channels that correspond to each subcategory contained inthe electronic subcategory guide 2102. The programs that correspond tothe particular categories of the electronic subcategory guide 2102 areindicated or highlighted on the electronic program guide. The status ofthe system pointer is shown and changed as the pointer is moved aboutthe display. For example, the system pointer may be manipulated by theuser to an area of the electronic subcategory guide 2102. When thesystem pointer is pointing to a subcategory block the subcategory blockis displayed as highlighted on the electronic category guide. In FIG.21, he system pointer is pointing to the “ALL” subcategory block 2108 inthe electronic subcategory guide 2102 as indicated by the highlightingof subcategory block 2108.

The multiple channel broadcasting system of one embodiment of thepresent invention provides a user with several options regarding theprograms available for broadcast. The multiple channel broadcastingsystem allows the user to select pay-per-view broadcasts for purchase.In addition, the broadcast system allows the user to selectcorresponding programs for recording. Furthermore, the multiple channelbroadcasting system allows the user to set a broadcasting system timerto automatically tune the broadcasting system to a program at aparticular time. Moreover, the multiple channel broadcasting systemallows the user to designate certain programs as favorite programs.Consequently, the multiple channel broadcasting system of one embodimentof the present invention displays icons that provide the user with thestatus of the programs while viewing the electronic program guide.

FIG. 22 is an exemplary flowchart that illustrates the process forproviding an icon to indicate program status in one embodiment of thepresent invention. Operation begins at Block 2202, at which thebroadcasting system is tuned to display a program broadcast. Operationcontinues at Block 2204, at which an electronic program guide isgenerated. Electronic menus may be displayed along with the electronicprogram guide. The electronic menus control pay-per-view purchases,selections of programs for recording, setting of the broadcasting systemtimer, and selection of favorite programs. At Block 2206, graphic imagesare generated that indicate program status. Operation continues at Block2208, at which the graphic images are displayed within the electronicprogram guide. The icons or graphic images may serve as electronic linksbetween the electronic program guide and a corresponding menu of theelectronic menus and a display information packet.

FIG. 23 illustrates the display of an electronic program guide havingprogram status icons in one embodiment of the present invention. Theicon 2302 displayed in program block 2304 to indicate that apay-per-view broadcast is selected resembles a dollar sign. The icon2306 displayed in program block 2308 to indicate that a broadcast isselected for recording resembles a videocassette tape. The icon 2310displayed in program block 2312 to indicate that the broadcast systemtimer is set to tune the broadcast system to a program at the time ofthe corresponding program resembles a clock. An icon may be displayed ina program block to indicate that a program is a favorite program. Icon2314 in program block 2316 is one possible representation of a favoriteprogram icon.

The multiple channel broadcasting system of one embodiment of thepresent invention provides a display of the time wherein a user can viewthe current time in relation to the times of programming and the programblocks. FIG. 24 is an exemplary flowchart that illustrates a process forproviding a time bar with the current time marker in one embodiment ofthe present invention. Operation begins at Block 2402, at which atelevision screen or display is currently showing a broadcast of aselected station. Operation continues at Block 2404, at which a user mayselect a display of an electronic program guide. If the user does notselect display of an electronic program guide operation continues atBlock 2402, at which the broadcasting system continues to display thebroadcast of the currently selected station. If the user selects thedisplay of an electronic program guide, operation continues at Block2406, at which the electronic program guide is displayed by thebroadcast system.

Following display of the electronic program guide, operation continuesat Block 2408, at which a time bar is displayed that identifies times ofprogramming on the channels in the broadcasting system. Operationcontinues at Block 2410, at which a graphical representation of thecurrent time is generated. Operation continues at Block 2412, at whichthe graphical representation of the current time is displayed inproximity to the time bar so as to indicate the current time in relationto the times of programming on the channels of the broadcast system. Inone embodiment of the present invention the graphical representation oftime is displayed as an inverted triangle on the time bar. The graphicalrepresentation of time may include a digital display of the currenttime. The graphical representation of time may also include an icon withthe display of the current time.

FIG. 25 illustrates the display of an electronic program guide and agraphical representation of the current time in relation to the times ofchannel programming in one embodiment of the present invention. When theuser selects the display of an electronic program guide, the electronicprogram guide 2502 is displayed by the broadcast system. With theelectronic program guide, a time bar 2504 is displayed that identifiestimes of programming 2506 on the channels in the broadcasting system. Anembodiment of the present invention generates a graphical representationof the current time 2508. This graphical representation of the currenttime 2508 is displayed in proximity to the time bar 2504 so as toindicate the current time in relation to the times of programming on thechannels of the broadcast system. This graphical representation of thecurrent time 2508 is displayed as an inverted triangle on the time barand includes a digital display of the current time.

In addition to the electronic program guide discussed herein, anembodiment of the multiple broadcasting system of the present inventionprovides an on screen menu display that enables the user to operatedifferent functions of the system. FIG. 26 is an exemplary flowchartthat illustrates the process for providing an on screen menu havingdiffering transparency levels in one embodiment of the presentinvention.

In FIG. 26, operation begins at Block 2602, at which an electronic menudisplay is generated. The menu display comprises multiple components,multiple alphanumeric characters, and multiple icons that identifydifferent functions of the broadcast system. Operation continues atBlock 2604, at which different levels of transparency are applied to thedifferent electronic menu components. The different levels oftransparency are applied to the components so that the number of opaquecomponents is minimized and the background is highly transparent.Operation continues at Block 2606, at which the electronic menu issuperimposed over the display of a program broadcast. While the opaquecomponents are minimized, the obstruction of the video of the broadcastby the electronic menu display is minimized. Preferably, the differenttransparency levels may be selected by the user.

When the user selects an electronic menu for display, then alphanumericcharacters and icons are generated that identify different broadcastsystem functions. The user may select the transparency levels to beapplied to the characters and icons of the electronic menu display. Ifthe user does not select the transparency levels to be applied to thecharacters and icons of the electronic menu, then the multiple channelbroadcasting system applies the least transparent level of transparencyto the electronic menu icons. Furthermore, the multiple channelbroadcasting system applies the least transparent level of transparencyto the verbal description of the broadcasting system functions.Moreover, the multiple channel broadcasting system applies the mosttransparent level of transparency to the numerals of the electronic menudisplay.

FIG. 27 illustrates the display of an on screen menu having differingtransparency levels in one embodiment of the present invention. Theelectronic menu display 2702 comprises multiple components 2711-2719,multiple alphanumeric characters 2720-2722, and multiple icons 2731-2739that identify different functions of the broadcast system. Differentlevels of transparency are applied to the different electronic menucomponents. The different levels of transparency are applied to thecomponents so that the number of opaque components is minimized and thebackground is highly transparent. Following generation of the electronicmenu 2702, the electronic menu 2702 is superimposed over a programbroadcast 2750.

The invention has been described in conjunction with the preferredembodiment. Although the present invention has been described withreference to specific exemplary embodiments, it will be evident thatvarious modifications and changes may be made to these embodimentswithout departing from the broader spirit and scope of the invention asset forth in the claims. Accordingly, the specification and drawings areto be regarded in an illustrative rather than a restrictive sense.

What is claimed is:
 1. A method for a broadcast system, the method comprising: providing an electronic program guide on a screen, the screen simultaneously displaying a broadcast and the electronic program guide, the electronic program guide listing a plurality of programs and channels corresponding to the programs; providing a controllable pointer used to select one of the plurality of programs, a first selected program being displayed on the screen as the broadcast; and providing a first description related to content being displayed within the broadcast on the screen, the first description displayed simultaneously with the first selected program and the electronic program guide; and replacing the first description with a second description related to different content of a second selected program selected by the controllable pointer, the screen capable of displaying the second description while simultaneously displaying the first selected program broadcast and electronic program guide, and wherein the selected program listing is to appear protruding from the screen and non-selected program listings are to appear depressed in the screen.
 2. The method of claim 1, further comprising: replacing the broadcast of the first selected program with the second selected program selected by the controllable pointer.
 3. A broadcast system comprising: a memory to store electronic program guide data; and a processor to provide an electronic program guide on a screen using the electronic program guide data in the mernory, the screen simultaneously displaying broadcast and the electronic program guide, the electronic program guide listing a plurality of programs and channels corresponding to the programs, to provide a controllable pointer used to select one of the plurality of programs, a first selected program being displayed on the screen as the broadcast, and to provide a first description related to content being displayed within the broadcast on the screen, the first description displayed simultaneously with the first selected program and the electronic program guide, and to replace the first description with a second description related to different content of a second selected program selected by the controllable pointer, the screen capable of displaying the second description while simultaneously displaying the first selected program broadcast and electronic program guide, and wherein the selected program listing is to appear protruding from the screen and non-selected program listings are to appear depressed in the screen.
 4. The broadcast system of claim 3, wherein the processor is to replace the broadcast of the first selected program with the second selected program selected by the controllable pointer.
 5. A computer-readable medium providing executable instructions, which if executed by a processor, causes the processor to perform an operation comprising: providing an electronic program guide on a screen, the screen simultaneously displaying a broadcast and the electronic program guide, the electronic program guide listing a plurality of programs and channels corresponding to the programs; providing a controllable pointer used to select one of the plurality of programs, a first selected program being displayed on the screen as the broadcast; and providing a first description related to content being displayed within the broadcast on the screen, the first description displayed simultaneously with the first selected program and the electronic program guide; and replacing the first description with a second description related to different content of a second selected program selected by the controllable pointer, the screen capable of displaying the second description while simultaneously displaying the first selected program broadcast and electronic program guide, and wherein the selected program listing is to appear protruding from the screen and non-selected program listings are to appear depressed in the screen. 